/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package controle;

import com.google.common.reflect.TypeToken;
import com.google.gson.Gson;
import java.lang.reflect.Type;
import java.sql.Date;
import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Named;
import modelo.Noticia;
import modelo.Tema;
import modelo.WebService;
import persistencia.TemaDAO;

/**
 *
 * @author Soares
 */
@Named(value="temaMB")

public class TemaMB {

    /**
     * Creates a new instance of TemaMB
     */
    
    private Tema tema;
    
    private TemaDAO dao;
    
    public TemaMB() throws SQLException,ParseException, Exception {
        
        tema = new Tema();
        dao = new TemaDAO();
        this.carregarTema();
       
    }
    
    public Tema getTema(){
        
        return tema;
    }
    
    public void setTema(Tema tema){
        this.tema = tema;
    }
    
    public void carregarTema() throws Exception{
       WebService ws = new WebService();
       String retorno = ws.sendGet("http://localhost:8080/PortalNoticiaWS/webresources/portal/getTema");
       Gson g = new Gson();
       Type tipo = new TypeToken<ArrayList<Tema>>(){}.getType();
       tema = g.fromJson(retorno,tipo);
    }
    
    public List<Tema> listar() throws SQLException{
       List<Tema> lista; 
       
       lista = dao.getTodosTema();
       return lista;
    }
    
}
